﻿<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:Controls="clr-namespace:ICSharpCode.WpfDesign.Designer.Controls" xmlns:ControlConvertors="clr-namespace:ICSharpCode.WpfDesign.Designer.Controls.Converters" xmlns:Converters="clr-namespace:ICSharpCode.WpfDesign.Designer.Converters">
	<!--
		This file contains the default styles used by the Controls in ICSharpCode.WpfDesign.Designer.Controls
	-->
	<Converters:LevelConverter x:Key="FormatDoubleConverter" />
	<ControlConvertors:HandleLengthWithOffset x:Key="HandleLengthWithOffset" />
	<SolidColorBrush Color="#FF474747" x:Key="HandleBrush" />
	<Style TargetType="{x:Type Controls:PanelMoveAdorner}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:PanelMoveAdorner}">
					<Border BorderThickness="4" Margin="-2" BorderBrush="Transparent" Cursor="SizeAll" />
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:EnumButton}" BasedOn="{StaticResource {x:Type ToggleButton}}">
		<Setter Property="Margin" Value="3 3 0 3" />
		<Setter Property="MinWidth" Value="50" />
	</Style>
	<Style TargetType="{x:Type Controls:ResizeThumb}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:ResizeThumb}">
					<Rectangle Name="thumbRectangle" SnapsToDevicePixels="True" Stroke="Black" Fill="White" RadiusX="1.414" RadiusY="1.414" />
					<ControlTemplate.Triggers>
						<Trigger Property="IsPrimarySelection" Value="False">
							<Setter TargetName="thumbRectangle" Property="Stroke" Value="White" />
							<Setter TargetName="thumbRectangle" Property="Fill" Value="Black" />
						</Trigger>
						<Trigger Property="IsEnabled" Value="False">
							<Setter TargetName="thumbRectangle" Property="Fill" Value="Gray" />
						</Trigger>
						<Trigger Property="ResizeThumbVisible" Value="False">
							<Setter TargetName="thumbRectangle" Property="Visibility" Value="Hidden" />
						</Trigger>
					</ControlTemplate.Triggers>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:SelectionFrame}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:SelectionFrame}">
					<Rectangle Fill="#519ABFE5" Stroke="#FF7A8787" StrokeThickness="1" />
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:ContainerDragHandle}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:ContainerDragHandle}">
					<Canvas Height="13" Width="13" Name="Canvas" SnapsToDevicePixels="True">
						<Rectangle Height="13" Width="13" RadiusX="2" RadiusY="2" Fill="#889ABFE5" Name="BorderRectangle" Stroke="#FF7A8FB5" StrokeThickness="1" />
						<Path Fill="#FF748EAA" Canvas.Left="1" Canvas.Top="1">
							<Path.Data>
								<GeometryGroup>
									<PathGeometry Figures="M5.5,0L3,3L8,3 M11,5.5L8,3L8,8 M5.5,11L3,8L8,8 M0,5.5L3,3L3,8" />
									<RectangleGeometry Rect="3,5,5,1" />
									<RectangleGeometry Rect="5,3,1,5" />
									<RectangleGeometry Rect="5,5,1,1" />
								</GeometryGroup>
							</Path.Data>
						</Path>
					</Canvas>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:WindowClone}">
		<Setter Property="Width" Value="640" />
		<Setter Property="Height" Value="480" />
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:WindowClone}">
					<Border Background="{DynamicResource {x:Static SystemColors.GradientActiveCaptionBrushKey}}" BorderBrush="{DynamicResource {x:Static SystemColors.WindowFrameBrushKey}}" BorderThickness="1,1,1,1" CornerRadius="5,5,5,5">
						<DockPanel Margin="4,0,4,4">
							<DockPanel Height="26" DockPanel.Dock="Top">
								<Image Width="16" Height="16" Margin="1,0,0,0" Source="{TemplateBinding Window.Icon}" />
								<Button Name="CloseButton" VerticalAlignment="Top" Width="43" Height="17" DockPanel.Dock="Right">
									<Path Fill="#FFF6F2F2" Stretch="Uniform" Margin="1" Stroke="#FF808080" Data="M160,400 L176,400 192,384 208,400 224,400 200,376 224,352 208,352 192,368 176,352 160,352 184,376 z" />
								</Button>
								<Button Name="MaximiseButton" VerticalAlignment="Top" Width="25" Height="17" DockPanel.Dock="Right" />
								<Button Name="MinimizeButton" VerticalAlignment="Top" Width="25" Height="17" DockPanel.Dock="Right">
									<!--<Rectangle Fill="#FFF6F2F2" RadiusX="0.5" RadiusY="0.5" Width="12" Height="5" Stroke="#FF808080" VerticalAlignment="Bottom" HorizontalAlignment="Center"/>-->
								</Button>
								<Label Margin="4,0,0,0" Content="{TemplateBinding Window.Title}" />
							</DockPanel>
							<Border Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}">
								<Border BorderBrush="{TemplateBinding Border.BorderBrush}" BorderThickness="{TemplateBinding Border.BorderThickness}" Background="{TemplateBinding Panel.Background}">
									<AdornerDecorator>
										<ContentPresenter ContentTemplate="{TemplateBinding ContentControl.ContentTemplate}" Content="{TemplateBinding ContentControl.Content}" />
									</AdornerDecorator>
								</Border>
							</Border>
						</DockPanel>
					</Border>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:ErrorBalloon}">
		<Setter Property="WindowStyle" Value="None" />
		<Setter Property="AllowsTransparency" Value="True" />
		<Setter Property="SizeToContent" Value="WidthAndHeight" />
		<Setter Property="ShowInTaskbar" Value="False" />
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:ErrorBalloon}">
					<Grid x:Name="LayoutRoot">
						<Grid.ColumnDefinitions>
							<ColumnDefinition Width="*" />
						</Grid.ColumnDefinitions>
						<Rectangle RadiusX="10" RadiusY="10" Margin="12,36,4,4">
							<Rectangle.Fill>
								<SolidColorBrush Color="#41626262" />
							</Rectangle.Fill>
						</Rectangle>
						<Border Margin="8,32,8,8" Background="{DynamicResource {x:Static SystemColors.InfoBrushKey}}" BorderBrush="{DynamicResource {x:Static SystemColors.WindowFrameBrushKey}}" BorderThickness="1,1,1,1" CornerRadius="10,10,10,10" Padding="10,10,10,10">
							<Border BorderBrush="{TemplateBinding Border.BorderBrush}" BorderThickness="{TemplateBinding Border.BorderThickness}" Background="{TemplateBinding Panel.Background}">
								<AdornerDecorator>
									<ContentPresenter ContentTemplate="{TemplateBinding ContentControl.ContentTemplate}" Content="{TemplateBinding ContentControl.Content}" />
								</AdornerDecorator>
							</Border>
						</Border>
						<Path Fill="{DynamicResource {x:Static SystemColors.InfoBrushKey}}" Stretch="Fill" HorizontalAlignment="Left" Margin="34.75,9.25,0,0" VerticalAlignment="Top" Width="15.25" Height="24.5" Data="M34.75,33.75 L40.5,9.25 50,33.5 z" />
						<Path Stretch="Fill" Stroke="{DynamicResource {x:Static SystemColors.WindowFrameBrushKey}}" HorizontalAlignment="Left" Margin="34.5,9.25,0,0" VerticalAlignment="Top" Width="16" Height="24" Data="M35,32.75 L40.5,9.25 50,32.75" />
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:GridRowSplitterAdorner}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:GridRowSplitterAdorner}">
					<Grid Height="{x:Static Controls:GridRailAdorner.SplitterWidth}">
						<Grid.ColumnDefinitions>
							<ColumnDefinition Width="10" />
							<!-- 10=RailSize -->
							<ColumnDefinition Width="*" />
						</Grid.ColumnDefinitions>
						<!-- put a transparent rectangle in the rail so the user does not have to hit the small railHandle -->
						<Rectangle Fill="Transparent" />
						<Path Name="railHandle" Fill="#FFE6E6FF" Stretch="Fill" Stroke="DodgerBlue" Data="M0,0 L0,1 1,0.5 z" />
						<Path Name="line" Stretch="Fill" Stroke="DodgerBlue" Grid.Column="2" Margin="-1 0 0 0" Data="M0,0.5 L1,0.5" />
					</Grid>
					<ControlTemplate.Triggers>
						<Trigger Property="IsMouseOver" Value="True">
							<Setter TargetName="railHandle" Property="Fill" Value="#FFFFB74F" />
						</Trigger>
						<Trigger Property="IsPreview" Value="True">
							<Setter TargetName="railHandle" Property="Stroke" Value="#D0FFB74F" />
							<Setter TargetName="line" Property="Stroke" Value="#D0FFB74F" />
						</Trigger>
					</ControlTemplate.Triggers>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:GridColumnSplitterAdorner}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:GridColumnSplitterAdorner}">
					<Grid Width="{x:Static Controls:GridRailAdorner.SplitterWidth}">
						<Grid.RowDefinitions>
							<RowDefinition Height="10" />
							<!-- 10=RailSize -->
							<RowDefinition Height="*" />
						</Grid.RowDefinitions>
						<!-- put a transparent rectangle in the rail so the user does not have to hit the small railHandle -->
						<Rectangle Fill="Transparent" />
						<Path Name="railHandle" Fill="#FFE6E6FF" Stretch="Fill" Stroke="DodgerBlue" Data="M0,0 L1,0 0.5,1 z" />
						<Path Name="line" Stretch="Fill" Stroke="DodgerBlue" Grid.Row="2" Margin="0 -1 0 0" Data="M0.5,0 L0.5,1" />
					</Grid>
					<ControlTemplate.Triggers>
						<Trigger Property="IsMouseOver" Value="True">
							<Setter TargetName="railHandle" Property="Fill" Value="#FFFFB74F" />
						</Trigger>
						<Trigger Property="IsPreview" Value="True">
							<Setter TargetName="railHandle" Property="Stroke" Value="#D0FFB74F" />
							<Setter TargetName="line" Property="Stroke" Value="#D0FFB74F" />
						</Trigger>
					</ControlTemplate.Triggers>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:MarginHandle}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:MarginHandle}">
					<Grid Height="10" Width="{Binding Path=HandleLength, Converter={x:Static ControlConvertors:HandleLengthWithOffset.Instance}, RelativeSource={RelativeSource Mode=TemplatedParent}}" SnapsToDevicePixels="True">
						<Grid.ColumnDefinitions>
							<ColumnDefinition Width="8" />
							<ColumnDefinition Width="*" />
						</Grid.ColumnDefinitions>
						<Path Name="startArrow" Fill="{StaticResource HandleBrush}" Stretch="Fill" Stroke="{TemplateBinding Panel.Background}" StrokeThickness="0.5" Margin="0,1,0,1" Data="M0,0 L0,1 1,0.5 z" Grid.Column="0" />
						<!-- Wrap the handle-line and endArrow in this grid. It's visiblity is subjected to HandleLength  -->
						<Grid Height="10" Grid.Column="1" Name="lineArrow">
							<Grid.ColumnDefinitions>
								<ColumnDefinition Width="*" />
								<ColumnDefinition MaxWidth="20" MinWidth="10" />
								<ColumnDefinition Width="*" />
								<ColumnDefinition Width="8" />
								<ColumnDefinition Width="1.5"/>
							</Grid.ColumnDefinitions>
							<Rectangle Fill="Transparent" Height="10" Grid.Column="0" Grid.ColumnSpan="4" />
							<Path Name="line1" Stretch="Fill" Stroke="{StaticResource HandleBrush}" StrokeThickness="1.5" Margin="0 0 0 0" Data="M0,-0.75 L1,-0.75" Grid.Column="0" />
							<TextBlock Grid.Column="1" Text="{Binding Path=HandleLength, Mode=OneWay, Converter={x:Static Converters:FormatDoubleConverter.Instance }, RelativeSource={RelativeSource Mode=TemplatedParent}}" FontSize="9" VerticalAlignment="Center" HorizontalAlignment="Center" Padding="1,1,1,1">
								<TextBlock.LayoutTransform>
									<RotateTransform Angle="{Binding Path=TextTransform, RelativeSource={RelativeSource Mode=TemplatedParent}}" CenterX="0.5" CenterY="0.5">
									</RotateTransform>
								</TextBlock.LayoutTransform>
							</TextBlock>
							<Path Name="line2" Stretch="Fill" Stroke="{StaticResource HandleBrush}" StrokeThickness="1.5" Margin="0 0 0 0" Data="M0,-0.75 L1,-0.75" Grid.Column="2" />
							<Path Name="arrow2" Margin="0,1,0,1" Fill="{StaticResource HandleBrush}" Stretch="Fill" Stroke="{TemplateBinding Panel.Background}" StrokeThickness="0.5" Data="M0,0 L0,1 1,0.5 z" Grid.Column="3" />
							<Rectangle Width="1.5" Fill="{StaticResource HandleBrush}" Grid.Column="4"/>
						</Grid>
						<!--  Rotate the handle and angle of rotation being set by the Margin type. See enum HandleOrientation  -->
						<Grid.LayoutTransform>
							<RotateTransform Angle="{Binding Path=Angle, RelativeSource={RelativeSource Mode=TemplatedParent}}">
							</RotateTransform>
						</Grid.LayoutTransform>
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:MarginStub}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:MarginStub}">
					<Grid SnapsToDevicePixels="True" Height="10" Width="10">
						<Rectangle Fill="Transparent" />
						<Ellipse Fill="{TemplateBinding Panel.Background}" Height="7" Width="7" StrokeThickness="1" Stroke="{StaticResource HandleBrush}" />
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:HeightDisplay}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:HeightDisplay}">
					<Grid Width="22">
						<Grid.RowDefinitions>
							<RowDefinition Height="*" />
							<RowDefinition MaxHeight="20" MinHeight="5" />
							<RowDefinition Height="5" />
						</Grid.RowDefinitions>
						<Path SnapsToDevicePixels="True" Grid.Row="0" Stroke="#AC0000" StrokeThickness="1.0" Data="M0,0 L1,0 M0.75,0 L0.75,1" Stretch="Fill" />
						<TextBlock Text="{Binding Path=ActualHeight, Converter={x:Static Converters:FormatDoubleConverter.Instance}}" HorizontalAlignment="Center" Margin="8,0,0,1" Padding="1,1,1,1" FontSize="10" Grid.Row="1">
							<TextBlock.LayoutTransform>
								<RotateTransform Angle="270" CenterX="0.5" CenterY="0.5" />
							</TextBlock.LayoutTransform>
						</TextBlock>
						<Path SnapsToDevicePixels="True" Grid.Row="2" Stroke="#AC0000" StrokeThickness="1.0" Data="M0.75,0 L0.75,3 M0,3 L1,3 " Stretch="Fill" />
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:WidthDisplay}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:WidthDisplay}">
					<Grid Height="22" SnapsToDevicePixels="True">
						<Grid.ColumnDefinitions>
							<ColumnDefinition Width="*" />
							<ColumnDefinition MaxWidth="20" MinWidth="5" />
							<ColumnDefinition Width="5" />
						</Grid.ColumnDefinitions>
						<Path Grid.Column="0" Stroke="#AC0000" StrokeThickness="1" Data="M0,0 L0,1 M0,0.75 L1,0.75" Stretch="Fill" SnapsToDevicePixels="True" />
						<TextBlock Text="{Binding Path=ActualWidth,  Converter={x:Static Converters:FormatDoubleConverter.Instance}}" HorizontalAlignment="Center" Margin="0,8,0,0" Padding="1,1,1,1" FontSize="10" Grid.Column="1" />
						<Path Grid.Column="2" Stroke="#AC0000" StrokeThickness="1" Data="M0,0.75 L3,0.75 M3,0 L3,1 " Stretch="Fill" SnapsToDevicePixels="True" />
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:InPlaceEditor}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:InPlaceEditor}">
					<TextBox Name="editor" SnapsToDevicePixels="True" Padding="{Binding Path=Padding}" FontSize="{Binding Path=FontSize}" FontFamily="{Binding Path=FontFamily}" FontStyle="{Binding Path=FontStyle}" FontStretch="{Binding Path=FontStretch}" FontWeight="{Binding Path=FontWight}" Text="{Binding Path=Bind, RelativeSource={RelativeSource Mode=TemplatedParent}, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" AcceptsReturn="True" />
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	<Style TargetType="{x:Type Controls:QuickOperationMenu}">
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:QuickOperationMenu}">
					<Menu Height="15" HorizontalAlignment="Left" Name="menu1" VerticalAlignment="Top" Width="15" BorderThickness="0" Background="Transparent">
						<MenuItem Height="15" Width="15" Padding="0" Background="Transparent" BorderThickness="1" Name="MainHeader">
							<MenuItem.Header>
								<Path Data="M3.5,5.5 L11.5,5.5 L7.5,11 z" Fill="Black" Stroke="Gray" StrokeThickness="1" />
							</MenuItem.Header>
						</MenuItem>
					</Menu>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
</ResourceDictionary>